package bupt.xixi.serializer;

import bupt.xixi.enumeration.Codec;

import java.util.HashMap;
import java.util.Map;

/**
 * 序列化器
 * @author wangc2h4
 */
public interface ICommonSerializer {

    /**
     * 序列化
     * @param obj 序列化的对象
     * @return 序列化结果
     */
    byte[] serialize(Object obj);

    /**
     * 反序列化
     * @param bytes 反序列化对象
     * @param clazz 反序列化的目标类
     * @return 反序列化结果
     */
    Object deserialize(byte[] bytes, Class<?> clazz);

    /**
     * 序列化器的编号
     * @return 结果
     */
    int getCode();
}
